package kov.core.global
{
	import flash.display.DisplayObjectContainer;
	import flash.display.Stage;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.utils.Timer;
	
	import kov.core.World;
	import kov.ui.Key;

	/**
	 * 全局属性。
	 * @author Y.Boy
	 */	
	public class Global
	{
		/**
		 * 游戏宽度。
		 */		
		public static const GAME_WIDTH:int = 448;
		
		/**
		 * 游戏高度。
		 */		
		public static const GAME_HEIGHT:int = 224;
		
		/**
		 * 帧频。
		 */		
		public static const FRAME_RATE:int = 60;
		
		/**
		 * 计时器。
		 */		
		public static var timer:Timer;
		
		/**
		 * 键盘。
		 */		
		public static var key:Key;
		
		/**
		 * 世界。
		 */		
		public static var world:World;
		
		/**
		 * 舞台。
		 */		
		public static var stage:Stage;
		
		/**
		 * 荒废了的构造函数。
		 */		
		public function Global()
		{
		}
		
		/**
		 * 初始化全局属性。
		 * @param main 可视容器。
		 */		
		public static function init(main:DisplayObjectContainer):void
		{
			main.stage.align = StageAlign.TOP_LEFT;
			main.stage.scaleMode = StageScaleMode.NO_SCALE;
			main.stage.frameRate = Global.FRAME_RATE;
			
			Global.timer = new Timer(1);
			Global.key = new Key(main.stage);
			Global.world = new World(main);
			Global.stage = main.stage;
		}
		
	}
}